#ifndef COLLISION_H
#define COLLISION_H

class Sphere;
class Box;
// ... more primitives

namespace Collision
{
    // Maybe detail more states? the book only covers this three
    typedef enum { Inside, Partially, Outside } CollisionState;
    // For now we only need to test primitives_cube collision
    //bool cube_cube_collision(const Cube &cube1, const Cube &cube2);
    // A simple sphere-cube collision
    CollisionState sphere_cube_collision(const Sphere &sphere, const Box &cube);
    //bool cylinder_cube_collision(const Sphere &sphere, const Cube &cube);
    CollisionState obb_obb_collision( const Box & box, const Box &box_node );

}

#endif // COLLISION_H
